# model settings
input_size = 300
model = dict(
    detector=dict(
        type='SingleStageDetector',
        pretrained='open-mmlab://vgg16_caffe',
        backbone=dict(
            type='SSDVGG',
            input_size=input_size,
            depth=16,
            with_last_pool=False,
            ceil_mode=True,
            out_indices=(3, 4),
            out_feature_indices=(22, 34),
            l2_norm_scale=20),
        neck=None,
        bbox_head=dict(
            type='SSDHead',
            in_channels=(512, 1024, 512, 256, 256, 256),
            num_classes=80,
            anchor_generator=dict(
                type='SSDAnchorGenerator',
                scale_major=False,
                input_size=input_size,
                basesize_ratio_range=(0.15, 0.9),
                strides=[8, 16, 32, 64, 100, 300],
                ratios=[[2], [2, 3], [2, 3], [2, 3], [2], [2]]),
            bbox_coder=dict(
                type='DeltaXYWHBBoxCoder',
                target_means=[.0, .0, .0, .0],
                target_stds=[0.1, 0.1, 0.2, 0.2])),
        train_cfg=dict(
            assigner=dict(
                type='MaxIoUAssigner',
                pos_iou_thr=0.5,
                neg_iou_thr=0.5,
                min_pos_iou=0.,
                ignore_iof_thr=-1,
                gt_max_assign_all=False),
            smoothl1_beta=1.,
            allowed_border=-1,
            pos_weight=-1,
            neg_pos_ratio=3,
            debug=False),
        test_cfg=dict(
            nms=dict(type='nms', iou_threshold=0.45),
            min_bbox_size=0,
            score_thr=0.02,
            max_per_img=200)))
cudnn_benchmark = True
